# 存放page页面的操作方法
# 常用的公共的方法 查找元素 输入方法 点击元素 获取文本值
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from utils.log import get_logger


class Base:
    def __init__(self, driver):
        self.driver = driver
        self.log = get_logger()
        self.log.info("初始化Base类完成")

    # 查找元素 -显示等待
    def find_element(self, loc):
        print(loc)
        # 直接传递解包的loc
        return WebDriverWait(self.driver, 5).until(EC.presence_of_element_located(loc))

    # 输入方法
    def send_text(self, loc, text):
        print(loc)
        self.find_element(loc).send_keys(text)

    # 点击元素
    def click_element(self, loc):
        self.find_element(loc).click()

    # 获取文本值
    def get_text(self, loc):
        return self.find_element(loc).text


